Computer systems are commonly built from an interconnected set of distinct components. When units become faulty they need to be replaced with a correctly functioning unit. Some computer systems, such as high availability storage systems, have built-in redundancy in which critical units are duplicated. Critical units may be units such as disk arrays, interface cards and connection cables, any of which may become faulty and require replacement. In such systems, the redundancy provided by duplicated units can be used to provide continuous service while a faulty unit is replaced. For example, if faults or errors are detected that suggest a connection cable needs to be replaced, user input/output (I/O) is diverted to a duplicate unit while the replacement is performed. Once the replacement unit is in place it is made available for use with user I/O. However, faults or errors may recur if they were misdiagnosed, a replacement unit is faulty or if more that one unit is contributing to the fault. In addition, if a replaced unit does not correct the detected faults or errors because user I/O may be disrupted.